#pragma once
#include "CoCElement.h"

struct FrameInfo
{
	int nFrameIndex;
	int Zorder;
	unsigned short nShapeIndex;
    AffineTransform *trans;
	Color4B *color;
};

class CoCElementMovieClip :
	public CoCElement
{
public:
	CoCElementMovieClip(void);
	~CoCElementMovieClip(void);
		
	virtual bool Parse(void *data, CoCSWF *pSWF);
	unsigned short GetID();
	char GetFrameRate();
	unsigned short GetFrameCount();

	std::vector<unsigned short> &GetShapes();
	std::vector<FrameInfo> &GetFrameInfo();
	std::vector<unsigned short> &GetAnimationInfo();

private:
	unsigned short m_nID;
	char m_cFrameRate;
	unsigned short m_nFrameCount;

	std::vector<unsigned short> m_vecShapeID;
	std::vector<FrameInfo> m_vecFrameInfo;
	std::vector<unsigned short> m_vecAnimationInfo;
};

